﻿using Os.Domain;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using MySql.Data.MySqlClient;
using System.Collections.Generic;
using System.Data;
using System.Web.Security;

namespace Os.Test
{
    
    
    /// <summary>
    ///This is a test class for OrdemServicoTest and is intended
    ///to contain all OrdemServicoTest Unit Tests
    ///</summary>
    [TestClass()]
    public class OrdemServicoTest
    {


        private TestContext testContextInstance;

        /// <summary>
        ///Gets or sets the test context which provides
        ///information about and functionality for the current test run.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

        #region Additional test attributes
        // 
        //You can use the following additional attributes as you write your tests:
        //
        //Use ClassInitialize to run code before running the first test in the class
        //[ClassInitialize()]
        //public static void MyClassInitialize(TestContext testContext)
        //{
        //}
        //
        //Use ClassCleanup to run code after all tests in a class have run
        //[ClassCleanup()]
        //public static void MyClassCleanup()
        //{
        //}
        //
        //Use TestInitialize to run code before running each test
        //[TestInitialize()]
        //public void MyTestInitialize()
        //{
        //}
        //
        //Use TestCleanup to run code after each test has run
        //[TestCleanup()]
        //public void MyTestCleanup()
        //{
        //}
        //
        #endregion


        /// <summary>
        ///A test for OrdemServico Constructor
        ///</summary>
        [TestMethod()]
        public void OrdemServicoConstructorTest()
        {
            int idOrdemServico = 0; // TODO: Initialize to an appropriate value
            OrdemServico target = new OrdemServico(idOrdemServico);
            Assert.Inconclusive("TODO: Implement code to verify target");
        }

        /// <summary>
        ///A test for OrdemServico Constructor
        ///</summary>
        [TestMethod()]
        public void OrdemServicoConstructorTest1()
        {
            OrdemServico target = new OrdemServico();
            Assert.Inconclusive("TODO: Implement code to verify target");
        }

        /// <summary>
        ///A test for AtualizarTempo
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void AtualizarTempoTest()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            target.AtualizarTempo();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for CalcularValorTotal
        ///</summary>
        [TestMethod()]
        public void CalcularValorTotalTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            target.CalcularValorTotal();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for CarregarTempos
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void CarregarTemposTest()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            target.CarregarTempos();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for CompleteObject
        ///</summary>
        [TestMethod()]
        public void CompleteObjectTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            target.CompletarObjeto();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Delete
        ///</summary>
        [TestMethod()]
        public void DeleteTest()
        {
            int parIdOrdemServico = 0; // TODO: Initialize to an appropriate value
            OrdemServico.Remover(parIdOrdemServico);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Delete
        ///</summary>
        [TestMethod()]
        public void DeleteTest1()
        {
            MySqlTransaction trans = null; // TODO: Initialize to an appropriate value
            int parIdOrdemServico = 0; // TODO: Initialize to an appropriate value
            OrdemServico.Remover(trans, parIdOrdemServico);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Finalizar
        ///</summary>
        [TestMethod()]
        public void FinalizarTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            target.Finalizar();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for GetParameters
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void GetParametersTest()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            List<MySqlParameter> expected = null; // TODO: Initialize to an appropriate value
            List<MySqlParameter> actual;
            actual = target.ObterParametros();
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Insert
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void InsertTest()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            target.Inserir();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Insert
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void InsertTest1()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            MySqlTransaction trans = null; // TODO: Initialize to an appropriate value
            target.Inserir(trans);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for CarregarTodos
        ///</summary>
        [TestMethod()]
        public void CarregarTodosTest()
        {
            List<OrdemServico> expected = null; // TODO: Initialize to an appropriate value
            List<OrdemServico> actual;
            actual = OrdemServico.CarregarTodosPorMesEAno(DateTime.Now.Year,DateTime.Now.Month);
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for LoadByCliente
        ///</summary>
        [TestMethod()]
        public void LoadByClienteTest()
        {
            Cliente cliente = null; // TODO: Initialize to an appropriate value
            List<OrdemServico> expected = null; // TODO: Initialize to an appropriate value
            List<OrdemServico> actual;
            actual = OrdemServico.CarregarPorCliente(cliente);
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for CarregarDadosBanco
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void CarregarDadosBancoTest()
        {
            int idOrdemServico = 0; // TODO: Initialize to an appropriate value
            IDataReader expected = null; // TODO: Initialize to an appropriate value
            IDataReader actual;
            actual = OrdemServico_Accessor.CarregarDados(idOrdemServico);
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for CarregarObjeto
        ///</summary>
        [TestMethod()]
        public void CarregarObjetoTest()
        {
            int parIdOrdemServico = 0; // TODO: Initialize to an appropriate value
            OrdemServico expected = null; // TODO: Initialize to an appropriate value
            OrdemServico actual;
            actual = OrdemServico.CarregarObjeto(parIdOrdemServico);
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for LoadPendentes
        ///</summary>
        [TestMethod()]
        public void LoadPendentesTest()
        {
            List<OrdemServico> expected = null; // TODO: Initialize to an appropriate value
            List<OrdemServico> actual;
            actual = OrdemServico.CarregarPendentes();
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Loadadoeport
        ///</summary>
        [TestMethod()]
        public void LoadadoeportTest()
        {
            DateTime dataInicial = new DateTime(); // TODO: Initialize to an appropriate value
            DateTime dataFinal = new DateTime(); // TODO: Initialize to an appropriate value
            int status = 0; // TODO: Initialize to an appropriate value
            Cliente cliente = null; // TODO: Initialize to an appropriate value
            List<OrdemServico> expected = null; // TODO: Initialize to an appropriate value
            List<OrdemServico> actual;
            actual = OrdemServico.CarregarRelatorio(dataInicial, dataFinal, status, cliente);
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for RealizarAbertura
        ///</summary>
        [TestMethod()]
        public void RealizarAberturaTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            string servicoSolicitado = string.Empty; // TODO: Initialize to an appropriate value
            Cliente cliente = null; // TODO: Initialize to an appropriate value
            target.RealizarAbertura(servicoSolicitado, cliente);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Save
        ///</summary>
        [TestMethod()]
        public void SaveTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            MySqlTransaction trans = null; // TODO: Initialize to an appropriate value
            target.Salvar(trans);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Save
        ///</summary>
        [TestMethod()]
        public void SaveTest1()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            target.Salvar();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for RealizarPersistencia
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void RealizarPersistenciaTest()
        {
            IDataReader dado = null; // TODO: Initialize to an appropriate value
            OrdemServico objOrdemServico = null; // TODO: Initialize to an appropriate value
            OrdemServico_Accessor.PreencherInstancia(dado, objOrdemServico);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for SetParameters
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void SetParametersTest()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            List<MySqlParameter> parms = null; // TODO: Initialize to an appropriate value
            target.PreencherParametros(parms);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Update
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void UpdateTest()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            MySqlTransaction trans = null; // TODO: Initialize to an appropriate value
            target.Atualizar(trans);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Update
        ///</summary>
        [TestMethod()]
        [DeploymentItem("Os.Domain.dll")]
        public void UpdateTest1()
        {
            OrdemServico_Accessor target = new OrdemServico_Accessor(); // TODO: Initialize to an appropriate value
            target.Atualizar();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }

        /// <summary>
        ///A test for Atendente
        ///</summary>
        [TestMethod()]
        public void AtendenteTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            //MembershipUser expected = null; // TODO: Initialize to an appropriate value
            //MembershipUser actual;
            //target.Atendente = expected;
            //actual = target.Atendente;
            //Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for DataAbertura
        ///</summary>
        [TestMethod()]
        public void DataAberturaTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            DateTime actual;
            actual = target.DataAbertura;
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for IdOrdemServico
        ///</summary>
        [TestMethod()]
        public void IdOrdemServicoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            int expected = 0; // TODO: Initialize to an appropriate value
            int actual;
            target.IdOrdemServico = expected;
            actual = target.IdOrdemServico;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for LocalAtendimento
        ///</summary>
        [TestMethod()]
        public void LocalAtendimentoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            LocalAtend expected = new LocalAtend(); // TODO: Initialize to an appropriate value
            LocalAtend actual;
            target.LocalAtendimento = expected;
            actual = target.LocalAtendimento;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Lote
        ///</summary>
        [TestMethod()]
        public void LoteTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            Lote expected = null; // TODO: Initialize to an appropriate value
            Lote actual;
            target.Lote = expected;
            actual = target.Lote;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Observacao
        ///</summary>
        [TestMethod()]
        public void ObservacaoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.Observacao = expected;
            actual = target.Observacao;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for ParecerTecnico
        ///</summary>
        [TestMethod()]
        public void ParecerTecnicoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.ParecerTecnico = expected;
            actual = target.ParecerTecnico;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Pausado
        ///</summary>
        [TestMethod()]
        public void PausadoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            bool expected = false; // TODO: Initialize to an appropriate value
            bool actual;
            target.Pausado = expected;
            actual = target.Pausado;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for ServicoSolicitado
        ///</summary>
        [TestMethod()]
        public void ServicoSolicitadoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            string expected = string.Empty; // TODO: Initialize to an appropriate value
            string actual;
            target.ServicoSolicitado = expected;
            actual = target.ServicoSolicitado;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for TempoTecnico
        ///</summary>
        [TestMethod()]
        public void TempoTecnicoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            TimeSpan expected = new TimeSpan(); // TODO: Initialize to an appropriate value
            TimeSpan actual;
            target.TempoTecnico = expected;
            actual = target.TempoTecnico;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for Tempos
        ///</summary>
        [TestMethod()]
        public void TemposTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            List<Tempo> actual;
            actual = target.Tempos;
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for TipoAtendimento
        ///</summary>
        [TestMethod()]
        public void TipoAtendimentoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            TipoAtend expected = new TipoAtend(); // TODO: Initialize to an appropriate value
            TipoAtend actual;
            target.TipoAtendimento = expected;
            actual = target.TipoAtendimento;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for ValorHora
        ///</summary>
        [TestMethod()]
        public void ValorHoraTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            float expected = 0F; // TODO: Initialize to an appropriate value
            float actual;
            target.ValorHora = expected;
            actual = target.ValorHora;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for ValorTotal
        ///</summary>
        [TestMethod()]
        public void ValorTotalTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            float actual;
            actual = target.ValorTotal;
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for cliente
        ///</summary>
        [TestMethod()]
        public void clienteTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            Cliente expected = null; // TODO: Initialize to an appropriate value
            Cliente actual;
            target.cliente = expected;
            actual = target.cliente;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }

        /// <summary>
        ///A test for equipamento
        ///</summary>
        [TestMethod()]
        public void equipamentoTest()
        {
            OrdemServico target = new OrdemServico(); // TODO: Initialize to an appropriate value
            Equipamento expected = null; // TODO: Initialize to an appropriate value
            Equipamento actual;
            target.equipamento = expected;
            actual = target.equipamento;
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }
    }
}
